import java.util.Scanner;

/**
 * @author yu
 * @date 2025年05月13日 15:07
 * @description: 进制转换
 * 描述
 * 对于给定的十六进制数，输出其对应的十进制表示。 *
 * 在本题中，十六进制数的格式为：0x开头，后跟若干个十六进制数字（保证为 0-9 和 A-F 中的一个）。
 * 其中，A-F 依次代表十进制中的 10∼15。
 *
 * 输入描述：
 * 在一行上输入一个十六进制数 s，代表待转换的十六进制数，格式见题干。保证 s 转化得到的十进制数 x 的范围为 1≦x<231。
 *
 * 输出描述：
 * 在一行上输出一个整数，代表 ss 对应的十进制数。
 * 示例1
 */
public class HJ5 {
    public static void main(String[] args){
        Scanner in = new Scanner(System.in);
        while(in.hasNextLine()){
            String s = in.nextLine();    //读入数字

            int count = 0;    //记录转换后的数字

            for(int i=2; i < s.length(); i++){
                //由于前面两位是'0x'，故从第三位开始
                char tc = s.charAt(i);
                int t = 0;    //记录字母转换成的数值

                //将字母转换为数值
                if(tc>='0' && tc<='9')
                    t = tc - '0';
                    //字母'A'/'a'~'F''f'对应数字10~15
                else if(tc>='A' && tc<='F')
                    t = tc - 'A' + 10;
                else if(tc>='a' && tc<='f')
                    t = tc - 'a' +10;
                //计算加和
                count += t * Math.pow(16, s.length()-i-1);
            }
            System.out.println(count);
        }
    }
    /*用 parseInt *//*
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        while(sc.hasNext()){
            String s = sc.nextLine();
            int res = Integer.parseInt(s.substring(2, s.length()),16);
            System.out.println(res);
        }
    }*/
}
